package com.algorithms.leetcode.Arrays;

/**

 给定一个由 整数 组成的 非空 数组所表示的非负整数，在该数的基础上加一。
 最高位数字存放在数组的首位， 数组中每个元素只存储单个数字。
 你可以假设除了整数 0 之外，这个整数不会以零开头。
 链接：https://leetcode-cn.com/problems/plus-one
 * <br>
 */
public class leetcode_66_plusone {

    public int[] plusOne(int[] digits) {
        for(int len = digits.length - 1 ; len >= 0 ; len--){
            digits[len]++;
            digits[len] = digits[len] % 10;
            //没有发生进位
            if(digits[len] != 0){
                return digits;
            }
        }
        //增加了位数
        digits = new int[digits.length + 1];
        digits[0] = 1;
        return digits;
    }
}
